Echo cancelers are typically voice operated devices positioned in the telephone network to improve the quality of voice and data transmissions by reducing the amount of echoes in the transmission. Echoes are generally caused by imperfect impedance matching in the 2-wire to 4-wire interfaces in the network. The echo canceler receives the transmitted signal, generates an estimate of the echo in the signal, and then subtracts the estimate from the transmitted signal. Since the amount of echo can vary during a telephone call as well as from call to call, the task of echo cancellation is a challenging problem not satisfactorily resolved by conventional echo cancelers. This task is even further complicated by the peculiarities of human hearing.
In general, the far-end speech signal is received and perceived by an echo canceler as the sum of near-end speech and echo. The echo canceler generally includes an adaptive filter to generate the echo estimate to cancel the echo in the far-end speech signal. Since this cancellation may not be complete, a non-linear processor is usually implemented to suppress the residual echo or the difference between the actual echo and the estimate of the echo. The adaptive filter is generally controlled by a parameter commonly called the adaptive gain. The non-linear processor is controlled by a parameter commonly called the residual suppression threshold. Therefore, the task of echo cancellation becomes the problem of computing the values for these parameters and providing the computed parameter values to the adaptive filter and non-linear processor at the correct time instances.
In the telephony industry, the terms "single talk", "double talk" and "soft double talk" describe the various conditions where the signal received by the echo canceler contains either all echo, no echo, and a combination of near-end speech and echo, respectively. Typically, both the adaptive gain and the residual suppression threshold parameters are both set at their respective minimum values during double talk, and at maximum values during single talk. However, during the transitional gray area between double talk and single talk conditions, the conventional method, of holding the parameter values at the minimum up to the instance the single talk condition is detected, has been proven unsatisfactory. The abrupt switch from the parameter minimum values to the maximum values demands an extremely accurate detection of the single talk condition. Inaccuracy may result in no echo canceling during an initial period of single talk, or maximum echo canceling during a latter period of hangover time where some information content may be present.
Accordingly, it is advantageous to gradually vary the adaptive filter and non-linear processor control parameters during hangover time. The result is a more desirable natural transition period between double talk and single talk.